package cn.sycoder.config;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;  
  
import javax.annotation.PostConstruct;  
import java.util.concurrent.TimeUnit;  
  
@Configuration  
public class AuthConfig {  
  
    @Value("${jwt.auth.secret}")  
    private String secretKey;  
  
    @Value("${jwt.auth.expirationTime}")
    private long expirationTime;  
  
    // 提供静态方法或静态变量访问配置值（密钥和token过期时间）
    private static String staticSecretKey;  
    private static long staticExpirationTime;  

    // 其他方法注入完成后，执行该初始化方法
    @PostConstruct
    public void init() {  
        staticSecretKey = secretKey;  
        staticExpirationTime = expirationTime;  
    }  

    // 调用getSecretKey()方法获取Jwt密钥
    public static String getSecretKey() {  
        return staticSecretKey;  
    }  

    // 调用 getExpirationTime() 方法获取Jwt过期时间
    public static long getExpirationTime() {  
        return staticExpirationTime;  
    }  
}